/**
 *
 */
package redick;

/**
 * @author Terrence Brannon
 *
 */

import java.lang.Math;


public class Verb {

	String verb;
	Double d1, d2;
	String s1, s2;

	Verb(String v) {
		verb = v.trim();
	}

	public String toString() {
		return verb;
	}

	public void setD1(String s) {
		d1 = Double.parseDouble(s);
	}

	public void setD2(String s) {
		d2 = Double.parseDouble(s);
	}

	public Double apply() { // *** This method must return type Double ...
		Double retval = 0.0;

		//System.out.println("v:" + verb + "d1: " + d1);
		if (verb.equals("-")) {
			retval = d1 - d2;
		} else if (verb.equals("+")) {
			retval = d1 + d2;
		} else if (verb.equals("*")) {
			retval = d1 * d2;
		} else if (verb.equals("/")) {
			retval = d1 / d2;
		} else if (verb.equals("%")) {
			retval = 1.0 / d1 ;
		}
		else if (verb.equals("double")) {
			retval = d1 + d1 ;
		}
		else if (verb.equals("square")) {retval = d1*d1;}
		else if (verb.equals("sqrt")) { retval = Math.sqrt( d1 ) ;}
		else if (verb.equals("increment")) {retval = d1 + 1.0;}
		else if (verb.equals("decrement")) {retval = d1 - 1.0;}
		else if (verb.equals("negate")) {retval = d1 * (-1.0);}

		return retval;
	}
}


